﻿using System;

namespace LibraryGuard.Interfaces.Configuration
{
	/// <summary>
	/// Interface for attribute that indicates adequate guard for config property.
	/// </summary>
	/// <remarks>
	/// Guard should implement <see cref="LibraryGuard.Interfaces.IGuard"/> interface and should have constructor that takes
	/// two parameters: IConfiguration an IGuardConfiguration(value of property with attribute).
	/// </remarks>
	public interface IGuardAttribute
	{
		/// <summary>
		/// Guard type.
		/// </summary>
		Type GuardType { get; }
	}
}
